package br.ufal.questione.dao.domain;
import static org.junit.Assert.assertEquals;

import java.util.List;

import org.junit.Before;
import org.junit.Test;
import org.springframework.beans.factory.annotation.Autowired;

import br.ufal.questione.dao.DepartamentoDao;
import br.ufal.questione.domain.Departamento;
import br.ufal.questione.util.DbTestUtil;

public class HibernateDepartamentoDaoTest extends DbTestUtil{

	@Autowired
	private DepartamentoDao departamentoDao;
	
	@Before
	public void setUp() throws Exception {
	}

	@Test
	public void testConsultarPorId() throws Exception {
		Long pk = 2L;
		Departamento departamento = departamentoDao.consultar(pk);
		assertEquals("objeto incorreto!", "Instituto de Engenharia", departamento.getNome());
		
	}
	
	@Test
	public void testInserir() throws Exception {
		Long pk = 2L;
		Departamento departamento = departamentoDao.consultar(pk);
		departamentoDao.excluir(departamento);
		List<Departamento> departamentos = departamentoDao.listar();
		assertEquals("Numero incorreto de objetos", 1, departamentos.size());
	}
	
	@Test
	public void testDeletar() throws Exception {
		
	}
	
	@Test
	public void testListarTodos() throws Exception{
		List<Departamento> departamentos = departamentoDao.listar();
		assertEquals("Numero incorreto de objetos", 2, departamentos.size());
	}
}
